# 新学习四个关键字: try except else finally

# 在开发过程中 尽量先使用逻辑来控制异常!!
# try的语法是用来处理预判不到的异常,或逻辑没有办法处理的异常

# input函数拿到的数据永远都是字符串
# try:
#     n = input("请输入等腰三角形的高度(需要是一个数字):")
#     # 判断用户输入的是否是数字 站在巨人的肩膀上!!!
#     flag = n.isdigit()
#     if flag:
#         n = int(n)
#         if n > 0:
#             for i in range(n):
#                 print(" " * (n - 1 - i), "*" * (2 * i + 1))
#         else:
#             print("用户输入的数字需要大于0")
#     else:
#         # n是非数字 或者 是负数
#         if n.startswith("-"):
#             print("用户输入的数字需要大于0")
#         else:
#             print("用户输入的不是数字")
# except:
#     print("异常情况")


try:
    n = int(input("请输入一个数字:"))
    print(3/n)
except ValueError:
    print("数值错误")
except ZeroDivisionError:
    print("被除数不能是0")
except:
    print("其他异常")
else:
    print("没有异常会执行else中的代码")
finally:
    print("不管有没有异常都会执行")